python print exception type and message

43

# In cases where you need to access exception **type** and message separately
try:
    x = 1/0
except Exception as ex:
  	# In most cases, print(ex) or logging.exception(ex) will do
    # But here we need to format the error message and access its type
    template = "An exception of type '{0}' occurred.\n\tArguments:{1!r}"
    message = template.format(type(ex).__name__, ex.args)
    print(message) 

# The lines above print:
    # An exception of type 'ZeroDivisionError' occurred.
    #    Arguments:('division by zero',)
try:
    with open(filepath,'rb') as f:
        con.storbinary('STOR '+ filepath, f)
    logger.info('File successfully uploaded to '+ FTPADDR)
except Exception as e: # work on python 3.x
    logger.error('Failed to upload to ftp: '+ str(e))

Comments

Submit
0 Comments